#ifndef SObject_H
#define SObject_H

///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////

class SObject : public QObject
{
	Q_OBJECT
	Q_PROPERTY(QString id READ id WRITE setId)
	Q_PROPERTY(QString title READ title WRITE setTitle)
	Q_PROPERTY(QString text READ text WRITE setText)

public:
	//static QString tagName() { return "var";}
	
public:
	SObject(QObject *parent = NULL);

	void setId(const QString &v) { m_id = v;}
	QString id() const { return m_id;}
	
	void setTitle(const QString &v) { m_title = v;}
	QString title() const { return m_title;}

	void setText(const QString &v) { m_text = v;}
	QString text() const { return m_text;}

private:
	QString m_id;
	QString m_title;
	QString m_text;
};

typedef QSharedPointer<SObject> SObjectPtr;

///////////////////////////////////////////////////////////////////////////////

class SObjects : public QObject
{
	Q_OBJECT

public:
	SObjects();
	
private:
	QList<SObjectPtr> m_list;
};

///////////////////////////////////////////////////////////////////////////////

#endif
